Data Pre-processing হলো মেশিন লার্নিং এবং ডেটা সায়েন্সের একটি গুরুত্বপূর্ণ প্রক্রিয়া, যার মাধ্যমে কাঁচা ডেটা (raw data) প্রক্রিয়া করে, এটি মডেল প্রশিক্ষণের জন্য উপযুক্ত করা হয়। কাঁচা ডেটা প্রায়শই অসম্পূর্ণ, অসমান এবং অসংগঠিত হতে পারে, যা সরাসরি মডেল ট্রেনিংয়ের জন্য ব্যবহার করা যায় না। ডেটা প্রি-প্রসেসিং বিভিন্ন ধাপের মাধ্যমে ডেটাকে সাফ, সুশৃঙ্খল এবং বিশ্লেষণের উপযোগী করে তোলে।
প্রধান Data Pre-processing Techniques
১. Missing Data Handling (অনুপস্থিত ডেটার সমাধান)
কাঁচা ডেটায় অনেক সময় কিছু মান অনুপস্থিত (missing) থাকতে পারে। এই ধরনের ডেটা মডেল ট্রেনিংয়ের জন্য উপযোগী নয়, তাই সেগুলি ঠিকভাবে হ্যান্ডেল করা জরুরি।
অনুপস্থিত ডেটার সমাধানের কিছু পদ্ধতি:
- ডিলিট করা (Deletion): যদি ডেটার খুব কম অংশ অনুপস্থিত থাকে, তবে সেগুলি বাদ দেওয়া যেতে পারে।
- ইম্পুটেশন (Imputation): অনুপস্থিত ডেটা পূর্ণ করার জন্য বিভিন্ন পদ্ধতি ব্যবহার করা যায়, যেমন:
- গড় বা মিডিয়ান মান দিয়ে পূর্ণ করা
- ক্লাস্টারিং বা k-NN (k-Nearest Neighbors) ব্যবহার করে ডেটা পূর্ণ করা
২. Data Normalization and Standardization (ডেটার সাধারণীকরণ এবং মানকরণ)
ডেটার স্কেল এবং পরিসর অনেক ভিন্ন হতে পারে, যা মডেলের কার্যক্ষমতা কমিয়ে দিতে পারে। তাই ডেটা নর্মালাইজেশন এবং স্ট্যান্ডারাইজেশন করা গুরুত্বপূর্ণ।
- Normalization (সাধারণীকরণ): ডেটার মানকে একটি নির্দিষ্ট পরিসরে (যেমন [0, 1]) আনার প্রক্রিয়া।
পদ্ধতি:
x' = (x - min) / (max - min)
- Standardization (মানকরণ): ডেটাকে গড় 0 এবং মান বিচ্যুতি (standard deviation) 1 এ রূপান্তরিত করা।
পদ্ধতি:
x' = (x - μ) / σযেখানে μ হল গড় এবং σ হল মান বিচ্যুতি।
৩. Encoding Categorical Data (বর্ণনামূলক ডেটার এনকোডিং)
অনেক ডেটায় বর্ণনামূলক (categorical) বৈশিষ্ট্য থাকে, যেগুলি সরাসরি মডেল ট্রেনিংয়ের জন্য ব্যবহারযোগ্য নয়। তাই এই ধরনের ডেটাকে সংখ্যায় রূপান্তর করা প্রয়োজন।
বর্ণনামূলক ডেটার এনকোডিং পদ্ধতি:
- Label Encoding: প্রত্যেক ক্যাটাগরিক্যাল ভ্যালুকে একটি ইউনিক সংখ্যা দিয়ে প্রতিস্থাপন করা।
- One-Hot Encoding: প্রতিটি ক্যাটাগরি ভ্যালুকে বাইনারি ভেক্টরে রূপান্তর করা, যেখানে প্রতিটি ক্যাটাগরি একক অবস্থানে 1 এবং বাকি সব জায়গায় 0 থাকে।
৪. Feature Scaling (ফিচার স্কেলিং)
ফিচার স্কেলিংয়ের মাধ্যমে সমস্ত বৈশিষ্ট্য একত্রে কাজ করার উপযোগী হয়, বিশেষ করে যখন বিভিন্ন বৈশিষ্ট্যের পরিসর খুব ভিন্ন হয়। এটি মেশিন লার্নিং অ্যালগরিদম যেমন কনভোলিউশনাল নিউরাল নেটওয়ার্ক (CNN), সাপোর্ট ভেক্টর মেশিন (SVM), এবং k-Nearest Neighbors (k-NN) এর জন্য বিশেষভাবে প্রয়োজনীয়।
- Min-Max Scaling: ডেটাকে 0 এবং 1 এর মধ্যে স্কেল করা।
- Z-Score Standardization: গড় এবং স্ট্যান্ডার্ড ডেভিয়েশন ব্যবহার করে স্কেল করা।
৫. Handling Outliers (আউটলিয়ার মোকাবিলা)
আউটলিয়ার (outliers) হল এমন ডেটা পয়েন্ট যেগুলি অন্য ডেটার তুলনায় অনেক বেশি বিচ্যুত। এটি মডেলের আউটপুটে বিরূপ প্রভাব ফেলতে পারে।
আউটলিয়ার মোকাবিলার পদ্ধতি:
- Z-score: আউটলিয়ার চিহ্নিত করতে গড় এবং স্ট্যান্ডার্ড ডেভিয়েশন ব্যবহার করা।
- IQR (Interquartile Range): ডেটার মধ্যম 50%-এ আউটলিয়ার চিহ্নিত করা এবং তা ফিল্টার করা।
৬. Data Augmentation (ডেটা বৃদ্ধি)
বিশেষ করে ইমেজ বা টেক্সট ডেটার ক্ষেত্রে, ডেটার পরিমাণ বাড়ানোর জন্য ডেটা অগমেন্টেশন ব্যবহার করা যেতে পারে। এটি কৃত্রিমভাবে নতুন ডেটা তৈরি করতে সহায়তা করে, যেমন:
- ইমেজ রোটেশন, ফ্লিপিং, স্কেলিং ইত্যাদি
- টেক্সট ডেটায় শব্দ পরিবর্তন, সেন্টেন্স রিকম্পোজ ইত্যাদি
৭. Dimensionality Reduction (ডাইমেনশনালিটি রিডাকশন)
ডেটার অনেক ফিচার (attributes) থাকলে, এটি মডেল ট্রেনিংয়ের জন্য জটিলতা তৈরি করতে পারে। এই ধরনের সমস্যাকে সমাধান করার জন্য ডাইমেনশনালিটি রিডাকশন পদ্ধতি ব্যবহার করা হয়, যাতে কম ফিচার ব্যবহার করে ডেটাকে আরও উপযোগী করা যায়।
ডাইমেনশনালিটি রিডাকশনের পদ্ধতি:
- PCA (Principal Component Analysis): এটি প্রধান উপাদান বিশ্লেষণ মাধ্যমে উচ্চমাত্রিক ডেটাকে কম মাত্রিক ভেক্টরে রূপান্তর করে।
- LDA (Linear Discriminant Analysis): এটি ক্লাসিফিকেশন সমস্যা সমাধান করতে ফিচার রিডাকশন পদ্ধতি ব্যবহার করে।
৮. Data Splitting (ডেটা বিভাজন)
ডেটা প্রি-প্রসেসিংয়ের শেষ ধাপ হল ডেটাকে ট্রেনিং, ভ্যালিডেশন, এবং টেস্ট সেটে ভাগ করা। এটি মডেল ট্রেনিং, পর্যালোচনা এবং মূল্যায়ন করার জন্য প্রয়োজনীয়। সাধারণত ডেটাকে 70-30 বা 80-20 অনুপাতে বিভক্ত করা হয়।
সারাংশ
ডেটা প্রি-প্রসেসিং মেশিন লার্নিং এর প্রাথমিক এবং গুরুত্বপূর্ণ পদক্ষেপ, যার মাধ্যমে কাঁচা ডেটাকে বিশ্লেষণের জন্য উপযোগী করা হয়। এতে অনুপস্থিত ডেটা, স্কেলিং, এনকোডিং, আউটলিয়ার হ্যান্ডলিং এবং ডাইমেনশনালিটি রিডাকশন সহ বিভিন্ন প্রক্রিয়া অন্তর্ভুক্ত থাকে, যা মডেল প্রশিক্ষণের জন্য ডেটাকে প্রস্তুত করতে সাহায্য করে।
Read more